Optimizations for predictive-corrective particle-based fluid simulation on GPU



Samuel Carensac Nicolas Pronost Saida Bouakaz
INSA de Lyon Université de Lyon, Université Lyon 1 Université de Lyon, Université Lyon 1
LIRIS CNRS UMR5205 LIRIS CNRS UMR5205 LIRIS CNRS UMR5205





Abstract :
The use of particles-based simulations to produce fluid animations is nowadays a frequently used method by both the industrial and research sectors. Although there are many variations of the smoothed particle hydrodynamics (SPH) algorithm currently being used, they all have the common characteristic of being highly parallel in nature. They are therefore frequently implemented on graphics processing units (GPUs) to benefit of high computation capacities of modern GPUs. However, such optimizations require specific optimizations to make use of the full capacity of the GPU, with sometimes optimizations being contradictory to optimizations used in CPU implementations. In this paper, we explored various optimizations on a GPU implementation of a recent particle-based fluid simulation algorithm using an iterative pressure solver. In particular, we focused on CPU optimizations that have not been thoroughly studied for GPU implementations: the indexing for the neighbor’s structure, the frequency of the sorting of the fluid particles, the use of lookup tables for the kernel function computations and the use of a warm-start to improve the performance of the iterative pressure solver. We show that some of these optimizations are only effective for very specific hardware configurations and sometimes even impact the performance negatively. We also show that the warm-start reduces the computation time but introduces a cyclic instability in the simulation. We propose a solution to reduce this instability without requiring to modify the implementation of the fluid algorithm.

Paper :
Paper published in The Visual Computer and accessible at https://doi.org/10.1007/s00371-021-02379-w. The paper is also publicly accessible in view-only at SharedIt.

Video :

Download the video (MP4, 5.5 MB)